Encriptación


Que es Encriptación?
 
Toda encriptación se encuentra basada en un Algoritmo, la función de este Algoritmo es básicamente codificar la información para que sea indescifrable a simple vista, de manera que una letra "A" pueda equivaler a :"5x5mBwE" o bien a "xQE9fq", el trabajo del algoritmo es precisamente determinar como será transformada la información de su estado original a otro que sea muy difícil de descifrar.
Una vez que la información arribe a su destino final, se aplica el algoritmo al contenido codificado "5x5mBwE" o bien a "xQE9fq" y resulta en la letra "A" o según sea el caso, en otra letra. Hoy en día los algoritmos de encriptación son ampliamente conocidos,es por esto que para prevenir a otro usuario "no autorizado" descifrar información encriptada, el algoritmo utiliza lo que es denominado llave ("key") para controlar la encriptación y decrepitación de información. Algunos algoritmos son DES (algoritmo simétrico) AES que posiblemente suplantará a DES y uno de los más conocidos RSA (algoritmo asimétrico)

Que función tiene la llave ("key")?

Existen dos tipos de llaves ("key's") , pero la de mayor uso en Internet es denominada "public key" o algoritmo asimétrico. El nombre "public" proviene de su funcionamiento: existe una llave pública que es dada a conocer a cualquier persona que así lo desee (todo Internet), esta llave pública es utilizada por los emisores de mensajes para Encriptar información , sin embargo, existe otra llave ( su pareja por llamarla de alguna manera) única que es conocida exclusivamente por el destinatario del mensaje, y es mediante esta llave única | secreta que el destinatario descifra ("decripta") los mensajes encriptados por el emisor.
Firmas Digitales ("Digital Signatures")
Una firma digital utiliza el mismo funcionamiento del "public key" o algoritmo asimétrico mencionado            anteriormente.

Como se mencionó, existe una "llave pública" y una "llave secreta", en el caso de firmas digitales la llave pública que es ampliamente conocida es capaz de identificar si la información proviene de una fuente fidedigna. En otras palabras, la llave pública será capaz de reconocer si la información realmente proviene de la "llave secreta" en cuestión. Ejemplo:
El departamento de compras posee las llaves públicas de todos los empleados de la compañía, si llega un pedimento con la dirección de email del Director de Finanzas, Cómo puede asegurarse el departamento de compras que en realidad esta persona realizó el pedimento y no alguna otra que sobrepuso el email ?. La llave secreta del director de finanzas debe de encontrarse solo en su computadora, por lo tanto al enviar el mensaje electrónico esta llave pública se añadió al email,y por lo tanto las llavespúblicasdeterminarán si la llave secreta coincide con la del director.

Encriptación de 40-bits y 128-bits.
Existen varios niveles de encriptación, pero las combinaciones más comunes son 40-512 bits ("llave secreta--llave pública") y 128-1024 bits ("llave secreta--llave pública"). La versión 128-1024 bits es el tipo de encriptación más fuerte que existe en el mercado. Actualmente U.S.A prohíbe la exportación de productos con este tipo de Tecnología, pero cabe mencionar que ya existen varios productos producidos en Europa con esta Tecnología que no poseen tales restricciones de exportación.

TIPOS DE CIFRADO
Cifrado Simétrico
Es una técnica de cifrado la cual consiste en el uso de una clave que es conocida tanto por el emisor como por el receptor (Solo usa una clave para cifrado y descifrado).

E y R conocen la clave K. El Emisor E, desea transmitir el mensaje a R. para ello usa un algoritmo de cifrado simétrico y la clave K, genera entonces el mensaje Mensaje(K), que es transmitido a R, este aplicando la mosca clave y el algoritmo inverso, obtiene nuevamente el mensaje original.

Algoritmos Más conocidos

RC51
Este algoritmo fue propuesto por Ron Rivest; Realiza operaciones or exclusivo, suma modular y desplazamiento de bits; Es un Cifrador en bloque de tamaño variable: Cifra bloques de texto de 32,64 o 128 bits, Para El tamaño de la clave se sugiere 128 bits, el numero de vueltas van de la 0 a la 255 y tiene la estructura de Red Fieltel.

Características
v Es muy rápido.
v La Arquitectura es simple.
v Bajos requisitos de memoria.
v Alta seguridad.
v Las rotaciones dependientes de los datos le fortalecen ante el criptoanálisis diferencial.

AES2
Es el estándar de encriptación avanzada, Es un algoritmo de cifrado de 128, 192 y 256 de longitud de clave (Matriz 4*4).

Características
v Se trabaja a nivel de byte para reflejar los coeficientes de los polinomios
v Tiene sus propias operaciones aritméticas (Suma exclusiva bit a bit - Multiplicación)
v No es de tipo Feistel.
v Implementado para trabajar en los procesadores de 8 bits usados en tarjetas inteligentes y en CPUs de 32 bits.

BLOWFISH 3
Algoritmo de tipo Feistel diseñado por Bruce en 1993, es de clave variable, cifra bloques de texto de 64 bits, el tamaño de la clave va de los 32 hasta los 448 bits; se generan 18 subclaves de 32 bits y cuatro cajas-S de 8*32 bits, en total 4.168 bytes.

Características
Usa una función F con las cuatro cajas-S y operaciones básicas de suma y or exclusivo que provocan un efecto de avalancha.
v Es compacto porque solo necesita 5K de memoria.
v Es muy Rápido (5 veces más velos que DES).
v Es conceptualmente simple.
v Su fortaleza es la longitud de la clave.
Cifrado Asimétrico
Este método usa un par de claves para el envío de mensajes. Estas claves pertenecen a la misma persona a la que se ha enviado el mensaje. Una clave es publica y esta clave se le entrega a cualquier persona, la otra clave es privada y el propietario debe guardarla de modo que nadie tenga acceso a ella entonces el emisor conoce la clave pública; cifra y envía el mensaje mediante esta clave al receptor este descifra el mensaje con la clave privada.

Los Algoritmos que usan esta técnica Son:
v Diffie-Hellman
v RSA
v DSA
v ElGamal
v Criptografía de curva elíptica
 
Existen también algunos protocolos que usan los algoritmos antes citados:
DSS ("Digital Signature Standard") con el algoritmo DSA ("Digital Signature Algorithm")
v PGP
v GPG, una implementación de OpenPGP
v SSH y TLS
v SSL, ahora un estándar del IETF


CONCLUSION

Una vez revisado el tema puedo decir que, Encriptar es una manera de codificar la información para protegerla frente a terceros ya que toda encriptación se encuentra basada en un Algoritmo, la función de este Algoritmo es básicamente codificar la información para que sea indescifrable a simple vista, para Encriptar información se utilizan complejas fórmulas matemáticas y para desencriptar, se debe usar una clave como parámetro para esas fórmulas.

BIBLIOGRAFIA

http://www.javahispano.com