Ver Mensaje Individual
  #8 (permalink)  
Antiguo 22/05/2012, 11:17
Avatar de Tecna
Tecna
 
Fecha de Ingreso: enero-2010
Mensajes: 291
Antigüedad: 14 años, 3 meses
Puntos: 45
Respuesta: Enviar datos cifrados

Buenas,

Cualquier cifrado que se realice en la parte del cliente con javascript sería altamente inseguro, por no decir inutil porque sería facilmente descifrable. Lo más seguro (partiendo de la base que no hay nada totalmente seguro) es usar el protocolo https, que además de implementar algoritmos de cifrado tiene otras medidas de seguridad como el uso de diferente puerto y capas de conexión y transporte que el protocolo http.

El algoritmo de cifrado MD5 al igual que otros como DES, SHA o RIPEMD son de un sólo sentido es decir no existe una función para obtener la cadena inicial sin cifrar partiendo de la cadena cifrada, se puede obtener por fuerza bruta y será más fácil cuanto mayor sea el número de colisiones posibles en la cadena cifrada (se produce una colisión cuando diferentes cadenas de entrada producen la misma cadena cifrada) y más dificil cuantos más bits tenga la cadena cifrada (en el caso de md5 128), pero todos más tarde o más temprano presentan alguna vulnerabilidad.

La función crypt() está disponible hace mucho tiempo en sistemas unix/linux y también en muchos lenguajes como perl, c, php y lo que hace es cifrar la cadena que se pasa como primer parámetro con cualquier algoritmo de cifrado existente en el sistema, que por supuesto se puede elegir. Podría darse el caso de que el único disponible fuera md5 así que no puede afirmarse que crypt sea más seguro que md5 porque son cosas distintas pero ambas podrían generar la misma cadena cifrada si crypt usara md5.