09 gru Niezwykłe życie ciasteczek – techniczne aspekty cookies
Co jakiś czas w mediach robi się głośno o plikach cookie – najczęściej wtedy, gdy jest to związane z karą finansową nałożoną za to, że określony podmiot nie informował użytkowników swojej strony o zbieraniu cookies. Z tego powodu termin cookies, większości osób kojarzy się, poza cukiernictwem, wyłącznie ze śledzeniem naszej aktywności w Internecie.
To prawda, ale w dużym uproszczeniu – każdy cookie zbiera informacje o nas po uzyskaniu dostępu do danej strony internetowej (w zasadzie dowolnej strony internetowej), jednak – każdy robi to nieco inaczej. Różne są przede wszystkim: zakres zbieranych danych, cele, dla których są zbierane oraz potrzeby, które cookies realizują.
Dlatego w tym i kolejnych artykułach postaramy się nieco odczarować temat plików cookie i przedstawimy ich techniczne aspekty, o których rzadko można przeczytać na łamach internetowych publikacji lub not prawnych na stronach www. Postaramy się również przedstawić, jakie przełożenie w praktyce mają pliki cookie na sposób, w jaki korzystamy z Internetu oraz aktualne trendy w podejściu do ich stosowania, bo wkrótce wiele ma się w tym zakresie zmienić.
Czym są pliki cookie?
Zacznijmy od teorii. Klasyczna, wielokrotnie wykorzystywana w praktyce definicja cookies zakłada, że są to:
niewielkie informacje / pliki, które są zapisywane na naszym urządzeniu (np. komputerze, smartfonie, tablecie) podczas wizyty na danej stronie www.
Faktycznie tak jest – cookies to:
- pliki;
- zawierające tekst w postaci szeregu liter / cyfr;
- o niewielkim rozmiarze – cookies „ważą” od 1 do kilku tysięcy bajtów[1] (mediana „wagi” cookie na lipiec 2020 r. wynosiła 36 bajtów[2]);
- zapisywane na naszym urządzeniu.
Cookies to w rzeczywistości nic innego jak kilka linijek tekstu. .
Jak pliki cookie są instalowane na urządzeniach?
Zdecydowana większość plików cookie jest ustawiana za pomocą tzw. nagłówka odpowiedzi HTTP[3] – którego instalacja krok-po-kroku wygląda następująco:
- po kliknięciu w dany odnośnik przeglądarki, prowadzący na stronę internetową, nasza przeglądarka wysyła żądanie HTTP[4] do serwera utrzymującego stronę;
- serwer odbiera żądanie od naszej przeglądarki i do zwracanego nagłówka odpowiedzi HTTP dodaje pole set cookie oraz odpowiadającą mu wartość value – jest to informacja jaki plik cookie należy wygenerować i zapisać na dysku. Dodatkowo, do takich danych serwer może dołączyć informację o czasie ważności ciasteczka lub o dodatkowych atrybutach – np. poziomie zabezpieczeń czy ścieżce cookie;
- następnie przeglądarka odbiera odpowiedź od serwera i tworzy na naszym dysku ciasteczko;
- za każdym razem, gdy kolejne żądanie jest wysyłane do serwera, przeglądarka wysyła wszystkie wcześniej zapisane pliki cookie do serwera za pomocą nagłówka HTTP;
- gdy serwer odbiera żądanie HTTP jest w stanie zweryfikować kto wysłał takie żądanie (może dzięki temu odróżnić nas od innych użytkowników strony).
Gdzie są instalowane pliki cookie?
Każda przeglądarka może instalować ciasteczka w innym miejscu. Najczęściej cookies zapisywane są w folderze, w którym znajdują się pliki przeglądarki (w przypadku Mozilli Firefox będzie to ścieżka: C:\Users\[nazwa_użytkownika]\AppData\Roaming\Mozilla\Firefox\Profiles/[nazwa_profilu]).
Pojedyncze ciasteczka nie są zapisywane w różnych plikach (1 plik cookie =/= 1 plik na dysku) – dla przykładu Firefox i Chrome przechowują wszystkie pliki cookie w bazie danych SQLite, na co wskazuje rozszerzenie „.sqlite” przy pliku cookies.
Po co są nam pliki cookie?
Pliki cookie spełniają różne potrzeby i realizują różne cele, m.in.:
- przechowywanie informacji o naszych preferencjach, lokalizacji, języku oraz innych danych tego typu;
- zabezpieczenie naszych danych przed nieuprawnionym dostępem osób trzecich;
- zapewnienie należytego funkcjonowania odwiedzanej przez nas strony internetowej;
- dopasowywanie informacji, które są nam wyświetlane (głównie chodzi tutaj o reklamy; tzw. cookies reklamowe);
- zbieranie danych statystycznych / analitycznych (ilość, czas odwiedzin na stronie).
Wbrew pozorom, pliki cookie nie służą wyłącznie do śledzenia nas w sieci w negatywnym tego słowa znaczeniu, mają często dużo praktyczniejszą rolę – przede wszystkim ułatwiają korzystanie z Internetu oraz zabezpieczają nasze dane przed przechwyceniem przez osoby trzecie. Jak w praktyce wygląda stosowanie cookies na przykładzie zakupów online?
Po otworzeniu strony sklepu internetowego, dodajemy wybrany produkt do koszyka oraz kontynuujemy zakupy – nieważne ile nowych kart otworzymy w celu wyszukania kolejnych produktów, nasz koszyk będzie cały czas przechowywał wybrane na początku towary. Jest tak dlatego, że właściwy plik cookie zadbał o przechowanie informacji na temat zawartości naszego koszyka na czas całej wizyty.
Jak dzielimy pliki cookie?
W pewnym uproszczeniu ciasteczka można podzielić następująco:
- ze względu na cel, któremu służą – cookies uwierzytelniające / śledzące / funkcjonalne;
- ze względu na podmiot, od którego pochodzą – tzw. first party / third-party cookies;
- ze względu na czas ich istnienia – tzw. cookies sesyjne / trwałe.
Różnice między plikami cookie
First-party cookies to ciasteczka tworzone bezpośrednio przez witrynę, którą otworzył użytkownik. Najczęściej cookies tego typu służą zapewnieniu niezakłóconego korzystania z danej strony, w tym zagwarantowaniu jej pełnej funkcjonalności – zbierają więc informację o języku, preferencjach wyświetlania, zapewniając użytkownikom odpowiednie doświadczenia. Mogą także zbierać informacje statyczne o czasie wizyty, liczbie wejść czy dotyczące zachowania na stronie i preferowanych produktów.
Third-party cookies to ciasteczka podmiotów trzecich. Są generowane przez strony internetowe inne niż te aktualnie przeglądane – zazwyczaj są powiązane z reklamami wyświetlanymi użytkownikom przez te podmioty trzecie.
First-party cookies | Third-party cookies | |
Pochodzenie | Pochodzą z otworzonej strony. | Nie pochodzą bezpośrednio z otworzonej strony, a z serwerów podmiotów trzecich (otwierana strona musi się do nich w określony sposób odwoływać). Dobrym przykładem jest przycisk „Lubię to” Facebooka, który może być później wykorzystany do sprawdzenia, jakie strony internetowe odwiedza użytkownik. |
Dostępność | Działają tylko w ramach wyświetlanej strony internetowej. | Mogą działać na każdej stronie, która odsyła do serwera podmiotu trzeciego. |
Wsparcie przeglądarki | Wsparcie każdej przeglądarki. Możliwość wyboru przez użytkowników, czy chcą instalować pliki cookie, czy nie. | Niektóre przeglądarki blokują pliki cookie podmiotów trzecich z uwagi na swoje polityki prywatności – zwłaszcza podczas korzystania z trybów prywatnego przeglądania. |
Ciasteczka sesyjne (session) zostają usunięte wraz z zamknięciem przeglądarki – oznacza to, że nie zastrzeżono dla nich atrybutu czasu trwania / wygaśnięcia. Niektóre przeglądarki mogą jednak używać mechanizmu przywracania sesji – wtedy ciasteczko sesyjne może zamienić się w ciasteczko trwałe i wyświetlać strony tak, jakby przeglądarka nie została nigdy zamknięta.
Ciasteczka trwałe (persistent) zamiast wygasnąć po wyłączeniu przeglądarki, wygasają z upływem określonego terminu lub po określonym czasie.
Pliki cookie w praktyce
Cookies zbierane przez stronę naszego bloga – www.cowprawiepiszczy.com, to:
- _ga,
- _gid,
- _gat_gtag_UA_107338695_1.
Wszystkie pochodzą od Google Analytics i służą badaniu statystyk wejścia na stronę.
Po wygenerowaniu listy ze strony bloga uzyskujemy ciąg dodatkowych informacji o zbieranych na nim cookies. Niektóre z nich (np. nazwa, subdomeny, ścieżka to tzw. atrybuty cookie). Atrybuty naszych cookie, są następujące:
Domena, z której pochodzi cookie | Czy obejmuje subdomeny serwisu | Ścieżka cookie | Czy obejmuje zabezpieczoną transmisję[5] | Data wygaśnięcia | Wartość cookie | |
_ga | .cowprawiepiszczy.com | PRAWDA | / | FAŁSZ | 1700210031 | GA1.2.903684089.1627051902 |
_gid | .cowprawiepiszczy.com | PRAWDA | / | FAŁSZ | 1637224431 | GA1.2.1908948575.1637054394 |
_gat_gtag_UA_107338695_1 | .cowprawiepiszczy.com | PRAWDA | / | FAŁSZ | 1637138092 | 1 |
Niektóre informacje o nas jako użytkownikach możemy pozyskać również bezpośrednio z wartości pliku cookie – w przypadku pliku _ga, dla którego wartość to: GA1.2.903684089.1627051902, możemy np. dowiedzieć się, że:
- GA1 – to nr wersji cookie (może ulec zmianie);
- 2 – to numer komponentów domeny;
- 903684089 – to losowo przypisany nr unikalnego ID;
- 1627051902 – to znacznik czasu określający 1 wizytę lub 1 instalację konkretnego pliku cookie.
3) i 4) wartość łącznie tworzą ID klienta (przeglądarki), która przechowywana jest w pliku cookie „_ga”, i to właśnie dzięki niej jesteśmy w stanie odróżnić jednego użytkownika od drugiego i mierzyć ilość „unikalnych” wejść na stronę.
Prawne uregulowania plików cookie
Techniczne aspekty plików cookie to jedno. Jak zatem wygląda ich stosowanie od strony prawnej? Ustawodawcy wyszli z założenia, że nikt nie może instalować plików w urządzeniu bez naszej wiedzy, a także – w niektórych przypadkach – zgody. W związku z tym zarówno na krajowym, jak i europejskim gruncie, obowiązują normy prawne, których muszą przestrzegać wszystkie podmioty, gromadzące informacje o użytkownikach witryn internetowych.
Zachęcamy do zapoznania się z drugim z serii artykułów, w którym skupimy się na regulacjach związanych ze zbieraniem, przechowywaniem i przetwarzaniem plików cookie.

[1] Bajt to najmniejsza po bicie jednostka informacji w pamięci komputera. Zazwyczaj przyjmuje się, że 1 bajt to 8 bitów.
[2] https://paulcalvano.com/2020-07-13-an-analysis-of-cookie-sizes-on-the-web/.
[3] Można je również ustawić za pomocą kodu JavaScript na stronie.
[4] Żądanie HTTP to nic innego jak kilka linijek tekstu – zawiera czasownik (np. „GET”), zasób, z którym jest powiązany (na tym przykładzie będzie to adres URL), wersję protokołu HTTP, linię nagłówków (nagłówki dot. np. ciasteczek, host’a, czy serwera) oraz ciało wiadomości (jeśli jest).
[5] Atrybut byłby prawdziwy (TRUE) tylko jeśli korzystalibyśmy ze schematu https: (z wyjątkiem localhost). Na stronach stosujących taki schemat pliki cookie są bardziej odporne na ataki typu „man-in-the-middle”, przechwytujące strumień danych.