Panduan Isoline

Memahami cookie, penyimpanan lokal, cache, dan fingerprint browser

Cookie, penyimpanan lokal, dan cache merupakan keadaan tersimpan. Fingerprint dibentuk dari sinyal yang diamati, sehingga menghapus data hanya menangani sebagian permukaan identitas.

Istilah ini sering muncul bersama dalam pengaturan privasi, petunjuk pemecahan masalah, dan produk profil browser. Perilakunya cukup berbeda sehingga “bersihkan browser” bukan petunjuk lengkap.

Model pemahaman praktis

Mekanisme Pembuat atau pengendali Cakupan biasa Tujuan umum Otomatis ikut permintaan?
Cookie HTTP Server menetapkan; browser menyimpan dan mengembalikan menurut aturan Host atau domain, jalur, masa berlaku, serta kondisi koneksi ID sesi, preferensi, keadaan pencegahan penyalahgunaan Ya, jika cakupan cocok
localStorage JavaScript situs Origin, dengan partisi dan kebijakan browser Keadaan aplikasi persisten berbentuk kunci–nilai Tidak
sessionStorage JavaScript situs Origin dalam sesi penjelajahan tingkat atas Keadaan sementara tab atau pekerjaan Tidak
Cache HTTP Browser serta aturan caching HTTP Kunci, arahan respons, dan kebijakan browser Menggunakan ulang respons untuk mengurangi latensi dan lalu lintas Bisa memenuhi atau memvalidasi ulang permintaan
Cache Storage API JavaScript situs atau service worker Origin atau partisi penyimpanan Sumber daya offline dan respons kelolaan aplikasi Tidak; skrip menentukan penggunaan
Fingerprint browser Situs atau pengamat mengukur sinyal Bergantung pada pengamat dan sinyal Keamanan, deteksi penipuan, analitik, atau pelacakan Sebagian tampak dalam permintaan, sebagian perlu kode aktif

Lima baris awal melibatkan keadaan yang disimpan. Baris terakhir merupakan metode observasi serta korelasi, meski keadaan tersimpan juga bisa menjadi salah satu masukannya.

HTTP sendiri sebagian besar tidak mempertahankan keadaan. Cookie memungkinkan server memberi pasangan nama–nilai lalu menerimanya pada permintaan berikutnya yang cocok. RFC 6265 mendefinisikan header respons Set-Cookie, header permintaan Cookie, serta model penyimpanan.

Cookie bisa berupa:

  • cookie sesi, bertahan sampai sesi yang ditentukan browser berakhir;
  • persisten, memiliki kedaluwarsa atau usia maksimum;
  • khusus host, hanya dikembalikan ke host pembuat;
  • cakupan domain, untuk domain serta subdomain yang cocok;
  • cakupan jalur, untuk jalur permintaan yang cocok;
  • Secure, hanya dikirim melalui kanal aman menurut browser;
  • HttpOnly, tidak tersedia melalui API cookie skrip tetapi tetap dikirim melalui HTTP.

Atribut menentukan pengiriman dan akses skrip, bukan membuat nilai cookie menjadi batas keamanan mandiri. RFC 6265 secara khusus melarang mengandalkan Path untuk keamanan serta menyarankan transportasi aman dan perlindungan tambahan untuk isi sensitif.

Banyak layanan menyimpan ID sesi acak di cookie, sedangkan akun dan detail sesi berada di server. Menghapus cookie membuang salinan ID pada browser, sehingga permintaan berikutnya tidak lagi menunjukkan sesi itu. Akun server dan sesi lain dapat tetap ada.

Karena itu, menyalin cookie autentikasi sensitif. ID yang masih berlaku dapat bertindak sebagai kredensial. Jangan tempelkan cookie mentah ke tiket, log, keluaran otomatisasi, atau chat.

Penyimpanan lokal: keadaan per origin yang dikendalikan skrip

Standar HTML mendefinisikan localStorage sebagai akses area penyimpanan origin. Tujuannya mencakup beberapa jendela dan bertahan melampaui sesi. Data berupa pasangan string kunci–nilai yang dapat diakses skrip dengan hak origin itu.

Origin biasanya menggabungkan skema, host, dan port. Karena itu, berikut merupakan cakupan berbeda:

  • https://app.example.test
  • http://app.example.test
  • https://admin.example.test
  • https://app.example.test:8443

Jalur URL bukan bagian origin. Halaman /billing/ dan /support/ pada origin sama dapat memakai area yang sama kecuali aplikasi memisahkannya secara logis.

Berbeda dari cookie, nilai localStorage tidak otomatis disertakan dalam HTTP. Skrip harus membaca dan menentukan penggunaannya. Ini cocok untuk preferensi, draf, serta data aplikasi, tetapi skrip apa pun dengan kewenangan origin berpotensi membacanya. Desain sesi sensitif perlu mempertimbangkan kompromi skrip; “lokal” tidak berarti rahasia.

Persisten berarti dapat melewati satu sesi, bukan tersimpan selamanya. Pengguna bisa menghapus, kebijakan membatasi, dan browser menerapkan kuota serta penggusuran data.

Masa hidup sessionStorage berbeda

sessionStorage terkait origin dan sesi penjelajahan tingkat atas. Cocok untuk keadaan selama alur tab atau jendela berlangsung lalu berakhir bersamanya. Tab yang diklon atau dipulihkan memiliki rincian siklus berbeda menurut browser; jangan menjadikannya satu-satunya catatan kerja penting.

Penyimpanan lokal bukan seluruh data situs

Aplikasi modern juga menyimpan di IndexedDB, Cache Storage, pendaftaran service worker, Origin Private File System, izin, serta tempat lain. Menghapus localStorage saja lewat alat pengembang bisa menyisakan keadaan lain.

Panduan privasi HTML menyarankan browser memungkinkan penghapusan semua mekanisme persisten bersama-sama. Jika tidak, situs bisa menggunakan satu tempat untuk membangun kembali ID yang dihapus dari tempat lain.

Cache: satu istilah, beberapa mekanisme

Cache HTTP

RFC 9111 mendefinisikan cache HTTP sebagai penyimpanan pesan respons beserta kendali penyimpanan, pengambilan, dan penghapusan. Browser bisa memakai respons segar atau memvalidasi yang usang untuk mengurangi latensi serta transfer.

Kunci cache mencakup setidaknya metode permintaan dan URI tujuan. Header menentukan kelayakan serta durasi pemakaian ulang. Ini lapisan optimasi; gambar atau skrip dalam cache biasanya tidak berarti pengguna sudah login.

Cache tetap dapat memengaruhi privasi. Waktu akses atau ketersediaan sumber daya bisa mengungkap informasi dalam model ancaman tertentu. W3C memasukkan pengamatan sumber daya cache sebagai cara menyimpulkan konfigurasi browser atau pengguna.

Cache Storage dan service worker

Cache Storage API memberi objek Cache yang dikendalikan skrip, sering untuk aplikasi offline. Spesifikasi Service Workers menjelaskan pemisahannya dari cache HTTP, batas origin, serta pembaruan atau penghapusan oleh logika aplikasi, bukan aturan kesegaran HTTP biasa.

Dalam pemecahan masalah:

  • menghapus gambar dan berkas cache menargetkan cache biasa;
  • menghapus data situs juga dapat menghapus Cache Storage serta keadaan service worker;
  • memuat ulang sambil melewati cache HTTP masih dapat menyisakan service worker aktif yang mengendalikan permintaan.

Tentukan cache mana sebelum memeriksa atau menghapus.

Partisi penyimpanan menambah kunci

Dulu, cakupan origin memungkinkan pihak ketiga tertanam membaca penyimpanan sama di banyak situs tingkat atas. Browser modern makin sering menambah situs tingkat atas atau konteks lain pada kunci penyimpanan.

Chrome menjelaskan bahwa partisinya mencegah frame example.com di a.com otomatis berbagi Local Storage, IndexedDB, Cache Storage, service worker, serta mekanisme komunikasi tertentu dengan frame yang sama di b.com. Chrome menyatakan ini aktif untuk semua pengguna sejak Chrome 115, dengan perubahan berikutnya pada API lain.

Itulah mengapa origin tertanam yang sama dapat melihat data berbeda menurut situs pembungkusnya. Namun, tidak berarti semua penyimpanan memakai model dua kunci universal. Versi, konteks utama atau tertanam, izin akses penyimpanan, kebijakan perusahaan, ekstensi, serta aturan API dapat mengubah hasil.

Uji konteks tepat, bukan menyimpulkan dari nama domain saja.

Fingerprint: sinyal yang diamati, bukan folder

W3C mendefinisikan fingerprinting sebagai kemampuan mengenali atau mengenali ulang pengguna, browser, atau perangkat melalui konfigurasi serta karakteristik yang dapat diamati. Panduan 2025 membedakan:

  • Pasif: informasi yang sudah terlihat pada permintaan atau jaringan, misalnya header dan IP.
  • Aktif: kode mengamati ukuran jendela, font, perangkat terhubung, performa, sensor, atau grafis.
  • Korelasi kejadian sementara: menghubungkan konteks melalui perubahan perangkat atau lingkungan yang hampir bersamaan.
  • Teknik mirip cookie: menyimpan dan membaca keadaan melalui mekanisme yang bertahan lebih lama atau membentuk kembali cookie biasa.

Fingerprint jarang berupa satu nilai tetap yang disimpan browser. Pengamat memilih dan menggabungkan sinyal lalu menilai kecocokan kunjungan. Hasil berubah ketika browser diperbarui, jendela berubah, font ditambah, perangkat terhubung, atau rute berpindah. Hasil juga bisa tetap mirip setelah cookie dihapus karena sinyal dasarnya sama.

Fingerprint bukan bukti identitas

Kumpulan sinyal dapat dimiliki banyak orang atau berubah pada satu orang. Situs juga dapat menggabungkannya dengan login, riwayat server, reputasi jaringan, atau ID tersimpan. Dikenali setelah penghapusan tidak membuktikan fingerprint saja penyebabnya.

Mengubah satu pengaturan tidak menjamin identitas baru. Konfigurasi umum yang konsisten dapat mengurangi sebagian keunikan, sedangkan banyak perubahan tak lazim bisa membentuk kombinasi lebih langka. Sinyal ini tidak mendukung jaminan tak terlihat atau penerimaan pihak ketiga.

Dampak tindakan penghapusan biasa

Tindakan Dampak yang mungkin Yang dapat tersisa
Hapus cookie situs Menghapus cookie yang cocok dan sering membuat logout profil Data server, perangkat lain, serta penyimpanan non-cookie
Hapus cookie dan data situs Dapat menghapus Web Storage, IndexedDB, service worker, serta keadaan lain sesuai UI dan cakupan Pengelola kata sandi, unduhan, data akun, dan sinyal perangkat
Hapus gambar dan berkas cache Menghapus respons cache biasa Cookie, localStorage, serta Cache Storage mungkin perlu pilihan lain
Bersihkan riwayat Menghapus URL kunjungan dan saran dalam cakupan terpilih Unduhan dan catatan situs
Hapus profil Menghapus bookmark, riwayat, kata sandi, dan pengaturan lokalnya Data akun tersinkron, ekspor, unduhan, cadangan, serta data server
Buat profil baru Memulai kumpulan keadaan profil berbeda Perangkat, OS, build, dan jaringan masih bisa tampak berkaitan

Panduan data Chrome memisahkan riwayat, cookie dan data situs, cache, riwayat unduhan, isi otomatis, pengaturan situs, serta data aplikasi. Riwayat unduhan yang dihapus meninggalkan berkasnya, dan penghapusan ketika login dapat memengaruhi Akun Google serta perangkat tersinkron.

Hasil tepat bergantung pada rentang waktu, profil, keadaan akun, versi, serta kebijakan perusahaan. Baca konfirmasi sebelum menghapus data yang sulit dipulihkan.

Pengaruh profil terpisah

Profil persisten yang benar-benar terpisah memiliki cookie, penyimpanan web, basis data situs, Cache Storage, kepemilikan cache HTTP, riwayat, izin, dan keadaan ekstensi sendiri. B tidak sekadar mewarisi sesi A.

Sinyal yang tetap bisa sama:

  • mesin dan versi browser;
  • OS dan perangkat keras;
  • font sistem serta layar;
  • bahasa, zona waktu, atau aksesibilitas dari host;
  • IP serta rute jika tidak diatur terpisah;
  • perilaku operator atau login yang menghubungkan aktivitas pada aplikasi.

Ekstensi, izin, jendela, bahasa, serta proxy juga bisa menghasilkan sinyal berbeda. Dampak total bergantung pada implementasi dan konteks. Nilai profil sebagai isolasi keadaan, bukan jaminan fingerprint.

Diagnosis gejala sebelum menghapus semuanya

“Saya tiba-tiba logout”

Periksa cookie dahulu: kedaluwarsa, terhapus, ditolak kebijakan, atau dibatalkan server. Penyimpanan lokal dapat mendukung UI, tetapi biasanya bukan cookie yang otomatis dikirim untuk autentikasi HTTP.

“Draf atau data offline hilang”

Periksa localStorage, IndexedDB, Cache Storage, serta service worker. Pastikan origin dan konteks utama atau tertanam karena partisi mengubah data tersedia.

“Pemuatan ulang pertama lambat”

Cache HTTP kosong atau usang mungkin berpengaruh. Jaringan, server, serta service worker bisa menimbulkan gejala sama; catat waktu permintaan dan status cache sebelum menyimpulkan.

“Situs tetap mengenali lingkungan setelah dibersihkan”

Mungkin akun masih login di tempat lain, server menghubungkan lewat akun atau jaringan, penyimpanan lain bertahan, atau karakteristik mengorelasikan sesi. Fingerprinting satu hipotesis, bukan jawaban otomatis.

Pilih tindakan sesuai mekanisme

  • Periksa atau hapus cookie untuk masalah sesi server.
  • Periksa penyimpanan per origin untuk keadaan lokal aplikasi.
  • Bedakan cache HTTP dan Cache Storage saat konten usang atau offline.
  • Gunakan profil persisten terpisah untuk keadaan kerja independen.
  • Pahami fingerprinting sebagai korelasi sinyal yang tidak hilang hanya dengan menghapus data atau mengubah satu parameter.

Ini menghindari penghapusan berlebihan dan asumsi bahwa cookie kosong menciptakan perangkat baru.

Batasan

Penyimpanan serta privasi terus berkembang antarbrowser dan rilis. Cookie pihak ketiga, partisi, penggusuran, sinkronisasi, kebijakan, ekstensi, serta mode privat dapat mengubah perilaku. Panduan menjelaskan standar dan dokumentasi Chrome pada tanggal akses, bukan setiap implementasi browser atau situs.

Tentang panduan ini

Bantuan AI
Artikel ini diterjemahkan dari sumber bahasa Inggris dengan bantuan AI. Isoline bertanggung jawab atas teks yang diterbitkan. Peninjauan oleh manusia yang fasih berbahasa Indonesia belum dicatat.

Sumber

Sumber mendukung topik yang tercantum di bawah. Tanggal akses menunjukkan kapan materi yang dikutip diperiksa.

  1. IETF RFC 6265: mekanisme pengelolaan keadaan HTTP Internet Engineering Task Force
    Mencakup
    Penyimpanan dan pengiriman cookie, atribut, batas keamanan, serta kewenangan sesi yang otomatis digunakan.
    Diakses
  2. Mencakup
    Cakupan origin localStorage dan sessionStorage, ketahanan penyimpanan, serta privasi.
    Diakses
  3. IETF RFC 9111: caching HTTP Internet Engineering Task Force
    Mencakup
    Penyimpanan, kunci, kesegaran, validasi ulang, dan penggunaan kembali respons HTTP.
    Diakses
  4. Mencakup
    Cache Storage yang dikendalikan skrip per origin dan perbedaannya dari cache HTTP.
    Diakses
  5. Mencakup
    Partisi menurut konteks tingkat atas, penerapan, dan batas per API.
    Diakses
  6. Mencakup
    Kategori penghapusan, dampak sinkronisasi, serta data yang tersisa setelah riwayat dihapus.
    Diakses
  7. Mencakup
    Kontrol jenis data termasuk Cache Storage, service worker, serta penyimpanan situs.
    Diakses
  8. Mencakup
    Pemisahan lokal, dampak, dan batas penghapusan profil Chrome.
    Diakses
  9. Mencakup
    Sinyal pasif, aktif, serta berbasis keadaan tersimpan dan batas korelasinya.
    Diakses
Sarankan koreksi