Ce sunt Cookie-urile?
Un cookie HTTP sau un modul cookie este un text special, deseori codificat, trimis de un server unui navigator web și apoi trimis înapoi (nemodificat) de către navigator, de fiecare dată când accesează acel server. Cookie-urile sunt folosite pentru autentificare precum și pentru urmărirea comportamentului utilizatorilor; aplicații tipice sunt reținerea preferințelor utilizatorilor și implementarea sistemului de „coș de cumpărături”.
Termenul „cookie” este un cuvânt englez (biscuit, pronunție: /ˈkuˌki/). În informatică el este derivat din termenul „magic cookie”, un concept des utilizat în IT. În general cuvântul „cookie” cu acest sens este folosit și în alte limbi; doar în terminologia tehnică francofonă s-a încercat traducerea lui prin termenul témoin („martor”).
Cookie-urile au creat îngrijorare din cauză că ele permit strângerea de informații despre comportamentul utilizatorilor (în principiu, ce anume pagini web vizitează și când). Ca urmare, folosirea lor (și a informațiilor culese) sunt supuse în unele țări unor restricții legale, printre care Statele Unite ale Americii și țările UE. Tehnicile de tip „cookie” au fost de asemenea criticate pentru faptul că identificarea utilizatorilor nu e întotdeauna precisă, ca și pentru faptul că prin intermediul lor se pot executa atacuri informatice.
Există și o serie de păreri greșite despre cookie-uri, cele mai multe bazate pe impresia (greșită) că ele ar conține întotdeauna cod executabil; în realitate ele sunt doar texte, și nu pot să execute nicio operație. Ele nu sunt nici spyware și nici viruși informatici, deși anumite programe antivirus și anti-spyware le pot detecta.
Cele mai multe navigatoare moderne permit utilizatorului să decidă dacă acceptă sau nu cookie-uri. Siturilor care le refuză le vor lipsi însă anumite facilități - de exemplu, într-un magazin virtual nu se va mai putea folosi coșul de cumpărături, dacă acesta a fost implementat cu ajutorul cookie-urilor.
Scopul Cookie-urilor
Cookie-urile sunt folosite de serverele web pentru a putea diferenția utilizatorii și pentru a putea reacționa în funcție de acțiunile acestora în cadrul unei sesiuni formate din mai multe tranzacții separate. Ele au fost inventate pentru a se putea implementa un coș de cumpărături virtual: de obicei, utilizatorul mai întâi se autentifică (login), apoi navighează pe site, adaugă sau elimină în voie obiecte din coș, apoi afișează conținutul coșului, cere calcularea prețului final, se hotărăște să comande (ori totuși renunță), iar la sfârșit închide sesiunea (logout).
Autentificarea utilizatorilor față de server este o altă aplicație a cookie-urilor; cu ajutorul acestora serverul reține faptul că utilizatorul s-a autentificat, și îi va permite acțiuni specifice celor autentificați.
Unele site-uri folosesc cookie-urile și pentru a permite utilizatorilor să modifice felul în care afișează paginile de web, în funcție de preferințele personale, care sunt reținute și între sesiuni. Se pot modifica și reține în acest fel atât aspecte legate de funcționalitatea cât și de afișarea grafică a paginilor. De exemplu, Wikipedia permite utilizatorilor înregistrați să modifice aspectul paginilor, iar în Google, chiar și utilizatorii neînregistrați pot de exemplu alege câte rezultate să fie afișate într-o pagină.
Cookie-urile se folosesc și pentru a urmări activitatea unui utilizator pe un site, sau chiar pe mai multe site-uri, în cazul cookie-urilor „third party” sau a așa-numiților „web bugs”. Urmărirea în cadrul unui site este făcută în scopul obținerii unor statistici de folosire. În special companiile de publicitate urmăresc activitatea utilizatorilor în cadrul mai multor situri pentru a afla mai exact interesele lor, putând astfel să decidă care anume reclame să trimită la un anumit moment unui anumit utilizator.
Generarea Cookie-urilor
Cookie-urile de obicei conțin date fără semnificație pentru utilizator sau pentru navigatorul său, dar care pot fi interpretate de server. Navigatorul le primește și le returnează serverului nemodificate, introducând astfel o „amintire” a evenimentelor trecute în cererea HTTP, care în sine este atemporală (altfel spus, fiecare cerere este în principiu un eveniment izolat, fără a avea vreo legătură cu alte cereri HTTP trecute sau viitoare către același server). Returnând însă un cookie unui server, acesta poate lega cererea actuală de cereri precedente (în care același server a trimis cookie-ul), în acest fel luând naștere o așa numită sesiune. În afară de servere, cookie-urile mai pot fi create și de aplicații web care rulează pe server, comunică cu clienții prin HTTP, și sunt scrise în limbaje de programare cum ar fi Java și C# sau în scripturi ce rulează pe server.
Descrierea detaliată a mecanismului sugerează ca navigatoarele să poată reține cel puțin 300 de cookie-uri de câte 4 kb, și cel puțin 20 pentru fiecare server sau domeniu de Internet.
La crearea cookie-ului se poate specifica și data de ștergere; în caz contrar, acesta va fi șters la închiderea navigatorului. Un magazin virtual poate dori să se rețină conținutul coșului de cumpărături între sesiuni, astfel încât la următoarea vizită utilizatorul să nu trebuiască să caute din nou toate produsele. În acest caz, serverul magazinului va crea un cookie cu un termen de ștergere ceva mai lung. Doar cookie-urile care au un termen de ștergere lung, specificat explicit, vor „supraviețui” între sesiuni, în care caz ele pot fi numite „persistente”.
Idei gresite despre Cookie-uri
De la apariția cookie-urilor pe Internet s-au răspândit și mai multe păreri greșite despre ele. În 2005, Jupiter Research a publicat rezultatele unui sondaj, conform căruia o bună parte din cei chestionați credeau că:
cookie-urile sunt similare viermilor sau virușilor, putând să șteargă date de pe hard disk;
cookie-urile sunt o formă de spyware, ele putând să citească informații personale stocate în PC;
cookie-urile generează popup-uri (ferestre cu reclame, deschise automat de către navigator, în general deranjante);
cookie-urile sunt folosite pentru a trimite spam;
cookie-urile sunt o formă de reclamă.
De fapt cookie-urile conțin doar date, nu și cod (instrucțiuni executabile): ele nu pot să șteargă sau să citească nimic de pe PC-ul utilizatorului.[6] Totuși, ele permit detectarea paginilor vizitate de un utilizator pe unul sau mai multe situri. Aceste informații pot fi colectate într-un profil al utilizatorului. Acesta este ce-i drept anonim (nu conține informații personale cum ar fi nume sau adresă, cu excepția cazului în care utilizatorul și-a indicat el însuși datele personale), dar conține totuși o adresă IP. Chiar dacă sunt în teorie anonime, datele colectate în acest fel au dat naștere unor îngrijorări cu privire la cât de bine se asigură anonimitatea utilizatorului atunci când navighează pe Internet.
În plus, conform aceluiași sondaj, destul de mulți intervievați nu știau cum să șteargă cookie-urile reținute de navigatoarele lor.
Anonimizarea navigarii
Cookie-urile au implicații destul de importante în ceea ce privește anonimitatea și securitatea informațiilor de natură personală ale celor care accesează pagini de web. Deși cookie-urile sunt trimise doar serverului care le-a creat sau unuia care este în același domeniu de Internet, o pagină poate conține imagini (sau alte elemente) găzduite pe mai multe servere din domenii diferite. Cookie-urile create de aceste servere secundare (față de serverul pe care este găzduită pagina propriu-zisă) se numesc „de terță parte”.
Companiile publicitare folosesc astfel de cookie-uri pentru a urmări utilizatorii care accesează paginile în care aceasta are imagini sau așa numite „Web-bugs” (care sunt imagini cu dimensiunea de un singur pixel, în mod normal invizibile — transparente, al căror singur rol constă în a declanșa un transfer de cookie-uri). În acest fel compania cunoaște comportamentul utilizatorilor și poate plasa reclame pertinente (apropiate de preocupările și interesele utilizatorului) în anumite pagini.
Posibilitatea generării unei aproximări a comportamentului utilizatorilor a fost considerată de unii drept o amenințare a anonimității, mai ales atunci când aceasta se face prin urmărirea acțiunilor pe mai multe domenii de Internet, folosind cookie-uri de „terță parte”. Din această cauză, folosirea cookie-urilor este reglementată prin lege în unele țări.
Guvernul Statelor Unite ale Americii a elaborat un set strict de reguli în privința cookie-urilor în anul 2000, după ce a ieșit la iveală faptul că Direcția pentru Controlul Drogurilor a Casei Albe folosea cookie-uri pentru a vedea dacă cei care îi accesau site-ul accesau după aceea pagini de web despre folosirea ori producerea drogurilor. În 2002, Daniel Brandt, militant pentru securitatea datelor personale pe web, a descoperit că și pagina de web a CIA lăsa pe hard-disk-urile utilizatorilor cookie-uri persistente (cu data de expirare 2010). După ce a fost anunțată că își încalcă propriile reguli, CIA a răspuns că trimiterea cookie-urilor a fost accidentală, că ele nu au fost folosite efectiv pentru a urmări utilizatorii și și-a modificat pagina astfel încât să nu mai folosească cookie-uri. Pe 25 decembrie 2005, Brandt a descoperit că și NSA lăsa două cookie-uri persistente pe calculatoarele utilizatorilor, din cauza unui update de software. După ce a fost informată de acest lucru, NSA a dezactivat trimiterea de cookie-uri de pe site-ul propriu.
O directivă din 2002 a Uniunii Europene în privința securității informațiilor de natură personală pe Internet conține reguli legate de folosirea cookie-urilor. Printre altele, Articolul 5, Alineatul 3 specifică faptul că salvarea datelor (cum ar fi cookie-uri) pe calculatorul unui utilizator poate fi făcută doar dacă: 1) utilizatorului i se spune cum vor fi utilizate aceste date; și 2) utilizatorului i se dă posibilitatea de a refuza aceste date. Totuși, același articol menționează faptul că salvarea datelor necesare din motive tehnice este exceptată de la această regulă. Această directivă trebuia aplicată încă din octombrie 2003, dar un raport din decembrie 2004] spune că această prevedere nu a fost pusă în practică, și că unele țări membre nici măcar nu au adoptat-o (Slovacia, Letonia, Grecia, Belgia, și Luxembourg). Același raport propune o analiză serioasă a situației din statele membre (ale Uniunii Europene).