PDA

Visualizza versione completa : Cookie: curiosità...


Lorenzo3
11-10-2007, 00.08.23
Dal corso di Laboratorio di Reti mi sorge la seguente domanda: ma perché a un cookie viene associata la coppia name=value invece che un semplice nome univoco?

Sarà anche banale, fatto sta che sono pure andato a spulciarmi l'RFC ma non dice nulla...

Dav82
11-10-2007, 02.25.48
Uno stesso dominio può utilizzare più cookie, da qui la necessità di disambiguazione mediante il nome :)

Se per esempio dai un'occhiata, vBulletin utilizza 5 cookie: bblastactivity, bblastvisit, bbuserid, bbpassword e bbthreadedmode: ognuno contiene una particolare informazione ;)

Lorenzo3
11-10-2007, 11.28.04
Uno stesso dominio può utilizzare più cookie, da qui la necessità di disambiguazione mediante il nome :)

Se per esempio dai un'occhiata, vBulletin utilizza 5 cookie: bblastactivity, bblastvisit, bbuserid, bbpassword e bbthreadedmode: ognuno contiene una particolare informazione ;)

Fin qui era chiaro. Ma il value perché?

Dav82
11-10-2007, 12.40.39
Beh, direi che è come la gestione di variabili: nomeVariabile = valoreVariabile; ogni cookie è una variabile (salvata lato utente), con un nome e un valore.

Certo, al posto di mettere:

nome_cookie = userid
value = Pippo

si potrebbe utilizzare una tecnica del tipo:

nome_cookie = userid:Pippo


ma ecco, non è proprio il massimo, per non dire che fa assolutamente schifo :D

Lorenzo3
11-10-2007, 12.50.03
Beh, direi che è come la gestione di variabili: nomeVariabile = valoreVariabile; ogni cookie è una variabile (salvata lato utente), con un nome e un valore.

Certo, al posto di mettere:

nome_cookie = userid
value = Pippo

si potrebbe utilizzare una tecnica del tipo:

nome_cookie = userid:Pippo


ma ecco, non è proprio il massimo, per non dire che fa assolutamente schifo :D

Continua però a sembrarmi sovrabbondante... forse è per distinguere i diversi cookie dai diversi server con lo stesso nome...

In ogni caso almeno nell'RFC potevano essere un po più espliciti... almeno per i gli ignorantelli come il sottoscritto :rolleyes:

Dav82
11-10-2007, 13.01.06
No, non è sovrabbondante :mm:
Un dominio può mandare più cookie, e quindi questi devono essere disambiguati fra loro => necessità del "nome"
Ogni cookie deve avere un valore, altrimenti non ha significato => necessità del "valore"

Tra l'altro il nome serve anche per accedere ai valori dei vari cookie, altrimenti bisognerebbe scorrere tutti i cookie inviati all'utente, ogni volta, e capire - tramite il valore - qual è quello che interessa; (e non è che sia sta cosa comoda eh)


Senza il nome sarebbe un po' come mettere in memoria dei valori, senza assegnare un nome di variabile => non si ha riferimento per accedere, e quindi il valore è perso
Senza il valore beh... sarebbe inutile allocare una variabile


:mm:

Lorenzo3
11-10-2007, 13.11.25
Vediamo se riesco a chiarirti cosa intendo affrontando da un'altro lato la questione: con che criterio vengono scelti i valori da assegnare ai cookie?

Perché, se il solo scopo del valore numerico fosse stato dar significato all'assegnazione di variabile, allora penso si sarebbe trovato un modo più furbo per implementare i biscottini...

Dav82
11-10-2007, 13.21.34
Perché, se il solo scopo del valore numerico fosse stato dar significato all'assegnazione di variabile, allora penso si sarebbe trovato un modo più furbo per implementare i biscottini...


Quale? :)

Lorenzo3
11-10-2007, 14.00.08
Quale? :)

Uno qualsiasi che non abbia bisogno del valore numerico.
Ad esempio, dare a tutte le variabili dei biscotti il valore zero facendole riferire tutte a un'unica locazione, e distinguendole a seconda del nome in qualche modo...

Quale modo? E che ne so :D ci sarà verso controllare l'esistenza o meno di una variabile, a prescindere dal valore...

Mi pare davvero strano non si possa fare a meno di assegnare ai cookies degli interi che occupano spazio inutilmente, e a volte come valore sono anche abbastanza elevati...

Dav82
11-10-2007, 14.11.41
Mh... però continuo a non capire :mm:


Volendo puoi assegnare un qualsiasi valore al cookie, e un byte in più o in meno beh, su pagine/richieste da qualche decina di kByte, non penso faccia differenza :)
Quanto ai numeri interi (o meglio, normalmente, stringhe alfanumeriche) con valori abbastanza elevati (ovvero stringhe abbastanza lunghe, tipicamente 32 o 64 caratteri) beh... sono così per ragioni di sicurezza di solito: non si mette certo nel cookie la password, ma uno suo hash opportunamente codificato...


In sostanza non capisco l'utilità di voler avere una variabile, senza che questa abbia un valore assegnato :mm:

Lorenzo3
11-10-2007, 15.42.44
Quanto ai numeri interi (o meglio, normalmente, stringhe alfanumeriche) con valori abbastanza elevati (ovvero stringhe abbastanza lunghe, tipicamente 32 o 64 caratteri) beh... sono così per ragioni di sicurezza di solito: non si mette certo nel cookie la password, ma uno suo hash opportunamente codificato...

Quindi il numero assegnato contiene l'hash della password e/o dell'account?

Gergio
11-10-2007, 15.44.47
ognuno ci mette quello che vuole