In teoria non c'è nessuna sessione, il client genera un hash e lo invia al server che genera lo stesso hash, lo compara e risponde con il dovuto messaggio, se l' hash viene copiato e inviato in un secondo momento esso non corrisponderà a quello generato dal server perché è cambiata la variabile tempo
(tanto per far chiarezza $hash = md5("$username.$pasword.( 5 * round(time() / 5))); )