PHP - Manera sencilla de crear un token único

 
Vista:
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Manera sencilla de crear un token único

Publicado por xve (6935 intervenciones) el 05/09/2014 15:11:35
Hola a todos, aquí les muestro una simple manera de crear un token único, el cual no se repita nunca.

1
2
3
4
<?php
$rand_part = str_shuffle("abcdefghijklmnopqrstuvwxyz0123456789".uniqid());
echo $rand_part;
?>

Devuelve siempre una cadena de 49 caracteres diferente, ya que implementa la función uniquid(), que devuelve un valor único basado en la hora actual en microsegundos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Cristian
Val: 4
Ha disminuido su posición en 225 puestos en PHP (en relación al último mes)
Gráfica de PHP

Manera sencilla de crear un token único

Publicado por Cristian (95 intervenciones) el 05/09/2014 16:19:01
Gracias xve...

Pregunto: se guarda y se valida como cadena ??? porque veo que genera una cadena aleatoria, pero al momento de validar como seria ?

Perdon si molesto demasiado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Manera sencilla de crear un token único

Publicado por Gonzalo (615 intervenciones) el 05/09/2014 17:02:55
como hacer lo mismo con 36 caracteres?

1
2
3
4
5
6
7
8
9
10
<?php
function UID()
{
  date_default_timezone_set("UTC");
 
  $Uid=hash("md2",(string)microtime());
 
  return $Uid;
}
?>

no digo que sea un metodo mejor, solo digo que resultan menos caracteres, tal vez ustedes quieran hacer una combinación de ambos codigos tal vez ese si seria un mejor codigo.

suerte, salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Cristian
Val: 4
Ha disminuido su posición en 225 puestos en PHP (en relación al último mes)
Gráfica de PHP

Manera sencilla de crear un token único

Publicado por Cristian (95 intervenciones) el 05/09/2014 17:28:11
hola Gustavo... gracias por responder.

Perdón por mi ignorancia, pero guardo la cadena que es aleatoria con el usuario... como valido que sea el usuario ???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Manera sencilla de crear un token único

Publicado por Gonzalo (615 intervenciones) el 05/09/2014 19:37:48
bueno, al ser un ID unico generado con hash es practicamente imposible que haya otro ID identico, aparte, hash destruye la cadena original, no hay forma de recuperar la cadena original una vez digerida pero ya que resulta como un ID unico respecto de una cadena de texto entonces si aplicas el algoritmo al texto original entonces debe dar el mismo ID, me explico

digamos que al aplicar hash en Cristian resulta AAAAAAAAA (por dar un valor) no es imposible pero si llevaria algunos años resolver de donde salio AAAAAAAA, pero si aplicas hash a Cristian te debe resultar la misma cadena AAAAAA, esa la comparas con el id que tenias previamente, si son iguales entonces probienen de la misma cadena orginal por tanto son iguales.

dicho de otra manera: la unica manera de saber si son iguales es aplicando hash a la cadena original, cualquier caracter que se cambie genera una digestion diferente por ejemplo

Cristian = AAAAAAAAA
CRistian = AEAEAEAEAE

Por eso es que se usa hash para encryptar passwords y de hecho les recomiendo que usen esta funcion para los passwords.

espero sea de ayuda, suerte, salu2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Cristian
Val: 4
Ha disminuido su posición en 225 puestos en PHP (en relación al último mes)
Gráfica de PHP

Manera sencilla de crear un token único

Publicado por Cristian (95 intervenciones) el 05/09/2014 19:51:20
Hola Gonzalo....
Si claro que has sido de ayuda y mucha... no sabia que funcionaba asi, como veia siempre caracteres diferentes me preguntaba: como lo comparo ???? por lo visto es asi...

Recuerdo que una vez hice en visual basic un sistema con control biometrico de huellas dactilares y funciona de la misma manera, uno nunca pulsa igual pero detecta parámetros que coinciden.

Un saludo y gracias lo voy a probar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Manera sencilla de crear un token único

Publicado por xve (6935 intervenciones) el 05/09/2014 17:31:36
Muy bueno también Gonzalo!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar