Magic cookie

Un magic cookie, o semplicemente cookie, è un token digitale, ovvero un breve pacchetto di dati scambiato tra programmi in comunicazione fra loro, dai contenuti solitamente opachi, ovvero non significativi per il programma destinatario. Il dato è infatti tipicamente interpretato solo quando, in un secondo momento, il destinatario restituisce il cookie al mittente originario o ad un altro programma. Molto spesso il cookie è usato in maniera simile a un ticket, cioè un magic number generato da un server per un client e in grado di identificare quest’ultimo in maniera univoca. Il ticket, essendo difficilmente falsificabile, può essere utilizzato come prova di autenticazione o di autorizzazione.

Per analogia con la vita reale, un magic cookie è molto simile al gettone che si riceve nei guardaroba dei teatri o dei musei quando si lascia in custodia un soprabito. Sebbene il gettone non abbia alcun significato intrinseco, la sua unicità consente al possessore di riavere lo stesso oggetto che aveva depositato, pur essendo totalmente all’oscuro (opacità dei dati) di come il personale custodisca e reperisca tali oggetti.

Il sistema di autenticazione di X Windows System utilizza un magic cookie, solitamente memorizzato nel file ..Xauthority di un utente, per identificare e autorizzare tale utente su quella macchina.

Il protocollo HTTP, usato per trasferire risorse web quali ipertesti o contenuti multimediali, è stato esteso rispetto alle formulazioni originali aggiungendo meccanismi di gestione di cookie per realizzare una comunicazione che potesse mantenere informazioni di stato. I cookie di HTTP sono spesso usati dai server web non solo per identificare un client, solitamente il browser, e per realizzare quei meccanismi di autenticazione dell’utente relativi alla procedura di login, ma talvolta anche per memorizzare vere e proprie informazioni, come una coppia chiave-valore.

Fonte: