Foros del Web » Programando para Internet » PHP »

Sobre crypt()

Estas en el tema de Sobre crypt() en el foro de PHP en Foros del Web. Hola, buen dia. Una consulta, la funcion crypt puede colisionar(dar el mismo resultado) en algun momento con diferentes strings??(como a veces sucede con algun hash) ...
  #1 (permalink)  
Antiguo 12/05/2011, 20:51
 
Fecha de Ingreso: marzo-2010
Mensajes: 71
Antigüedad: 14 años
Puntos: 24
Sobre crypt()

Hola, buen dia.

Una consulta, la funcion crypt puede colisionar(dar el mismo resultado) en algun momento con diferentes strings??(como a veces sucede con algun hash)

Gracias
  #2 (permalink)  
Antiguo 13/05/2011, 02:44
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Sobre crypt()

Para evitar eso puedes usar CRYPT_SHA512 y así no te tienes que preocupar porque tengas resultados iguales.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 13/05/2011, 08:11
 
Fecha de Ingreso: marzo-2010
Mensajes: 71
Antigüedad: 14 años
Puntos: 24
Respuesta: Sobre crypt()

Hola.

La cosa es que sea algo corto, pensaba usarlo para crear directorios a usuarios, asi:
$nombre_directorio = crypt($user_id, 'una_key');
Entonces me crea un conjunto de caracteres corto, pero encriptado, y a la vez.. unico.

Pude comprobar que sea unico asi:
Código PHP:
Ver original
  1. <?php
  2.  
  3. $arr = array();
  4. for ($i = 1; $i <= 100000; $i++) {
  5.     $arr[] = crypt($i, 'una_key');
  6. }
  7.  
  8. echo count($arr) . ' resultados<br />';
  9. echo count(array_unique($arr)) . ' unicos<br />';

Mi pc tarda un poco con este codigo. Pero pude comprobar que hasta el cien mil no hay dramas, son todos resultados unicos.

Sabes si hay otro modo mejor? la idea, como dije es crear un directorio unico por usuario para guardar ahi las imagenes.

Gracias abimaelrc
  #4 (permalink)  
Antiguo 13/05/2011, 08:37
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Sobre crypt()

Bueno en ese caso, hasta con md5 no debes tener problemas de duplicidad.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: crypt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:56.