Hola! Tengo una duda de conceptos. Yo quiero asegurarme que los formularios que me envia un cliente no se puedan falsificar por terceros. Para ello en el formulario creo una variable hidden con el valor de su identificar de session encriptado:
<form method="post" enctype="multipart/form-data">
<input type="hidden" name="token" value="<?=hash("md5", session_id());?>"/>
-
-
</form>
despues, una vez que recibo el formulario compruebo que realmente sea de ese usuario, para ello hago lo siguiente:
class tokenClass
{
public static function checkToken($token)
{
if($token==hash("md5",session_id()))
return TRUE;
else
return FALSE;
}
}
if(!tokenClass::checkToken($_POST['token'])){
-
-
-
}
Ahora mi pregunta es, si yo en el formulario le envio el token y al recibirlo compruebo que sea autentico, una tercera persona podria interceptar el mensaje que yo le envio(del lado del servidor) y crear un formulario falso poniendo como tokken el mismo que ha cogido?
Mi duda es basicamente de conceptos y me estoy liando bastante. Si alguien me pudiera explicar exactamente porque es seguro o de que manera se deberia hacer se lo agradeceria, ya que ahora por mucho que le envie un token no veo donde esta la seguridad ya que me lo podrian reenviar.
Muchas gracias,
Saludos