Keamanan
Bukti bahwa peramban Anda bukan brankas.
Chrome dan Firefox akan menyimpan kata sandi Anda — lalu menyerahkannya ke program apa pun yang berjalan atas nama Anda. Itu bukan bug. Itu memang desainnya. Berikut buktinya: sekali dalam bahasa Inggris sederhana, sekali dalam kode.
Versi bahasa Inggris sederhana
"Manajer kata sandi" peramban Anda dilindungi oleh tepat satu kunci: login komputer Anda. Setelah Anda masuk ke laptop Anda, peramban dapat membaca setiap kata sandi yang tersimpan secara instan — sehingga program apa pun yang berjalan di akun Anda juga dapat melakukannya.
Unduhan berbahaya. Game peramban yang mencurigakan. Satu paket yang terinfeksi dalam proyek yang Anda kloning. Saat dijalankan — saat Anda masuk, seperti biasa — ia membaca setiap kata sandi yang disimpan peramban Anda, hanya dalam waktu yang dibutuhkan untuk membuka file. Tidak ada kata sandi utama untuk dipecahkan, karena tidak ada yang perlu dipecahkan: peramban dibuat untuk membuka kunci secara otomatis untuk Anda, dan malware hanya meminta akses dengan sopan atas nama "Anda."
Ini bukan sekadar teori. Ini adalah cara paling umum yang membuat orang awam kehilangan akun mereka. Malware bahkan memiliki istilah industri yang membosankan — "info-stealers" — karena saking seringnya terjadi. Kata sandi Anda, kartu tersimpan Anda, cookie sesi Anda: disalin dan hilang sebelum Anda menyadarinya.
Solusinya sederhana: kata sandi Anda harus dikunci dengan sesuatu yang tidak dimiliki oleh sisa sistem komputer Anda — dan kata sandi tersebut seharusnya tidak disimpan di perangkat sama sekali.
Versi dengan bukti
Jangan hanya percaya pada kami. Chromium dan Firefox adalah open source, dan alur pembacaan didokumentasikan, standar, dan singkat. Berikut adalah lokasi persis kata sandi dan cara mengekstraknya.
Chrome (dan semua peramban Chromium)
Chrome menyimpan data login dalam basis data SQLite — Login Data, tabel logins, kolom password_value — dienkripsi dengan AES-256-GCM. Kunci AES berada di Local State, "dilindungi" oleh OS: DPAPI di Windows, Keychain saat login di macOS, gnome-keyring/kwallet (atau plaintext) di Linux.
Baca sendiri — kodenya terbuka. Cari di Chromium konstanta yang menandai kunci yang dibungkus: kDPAPIKeyPrefix di os_crypt. Kunci tersebut dibungkus DPAPI, ditandai, dan disimpan — lalu dibuka dengan satu panggilan yang tidak melindungi apa pun dari Anda:
const char kDPAPIKeyPrefix[] = "DPAPI";
CryptUnprotectData(&intermediate, /*ppszDataDescr=*/nullptr,
/*pOptionalEntropy=*/nullptr, nullptr, nullptr, 0, &output);Tidak ada rahasia kedua, tidak ada kata sandi, tidak ada prompt. CryptUnprotectData mengembalikan kunci ke proses apa pun yang berjalan di sesi Anda — yang persis seperti model ancaman yang didokumentasikan DPAPI: jika berjalan atas nama Anda, itu adalah Anda. Seluruh pekerjaan penyerang adalah tiga baris: baca kunci dari Local State, unwrap, dekripsi AES-GCM setiap baris di Login Data. Malware info-stealer telah melakukan persis seperti ini selama bertahun-tahun.
"Enkripsi pada perangkat" juga tidak melindungi Anda
Jawaban Google adalah PIN 6 digit yang mengenkripsi brankas tersinkronisasi Anda. Pada Mei 2026, peneliti di Phishu menunjukkan betapa lemahnya perlindungan itu. Halaman login Google palsu yang meyakinkan — phishing adversary-in-the-middle — menangkap sesi dan PIN tersebut, dan PIN adalah kunci utama untuk setiap kata sandi dan passkey di akun yang disinkronkan. Dengannya, penyerang menambahkan perangkat mereka sendiri ke "domain keamanan" Google Anda dan seluruh brankas tersinkronisasi langsung ke perangkat mereka — pengambilalihan penuh dalam satu langkah.
Celah desain: Google mengizinkan perangkat ditambahkan hanya dengan PIN 6 digit, tanpa persetujuan dari perangkat yang sudah Anda miliki.
Firefox
Firefox menyimpan data login di logins.json dan kunci di key4.db, didekripsi oleh "Secret Decoder Ring" NSS — juga open source: security/nss/lib/pk11wrap/pk11sdr.c. Jika Anda mengatur Kata Sandi Utama, kunci tersebut disegel dengannya.
Secara default, Anda belum mengaturnya — jadi kunci tersebut disegel dengan string kosong, dan nilai "password-check" yang tersimpan mengonfirmasi bahwa kata sandi kosong mendekripsinya. Salin dua file dari profil Anda (key4.db + logins.json), arahkan NSS atau firepwd.py open source ke sana, dan mereka akan mendekripsinya. Gembok yang kuncinya ditempel di pintu bukanlah gembok.
Setiap penyimpanan kata sandi peramban memiliki pola yang sama: rahasia disimpan di tempat Anda bekerja, dibuka oleh sesi yang sudah Anda masuki. Enkripsi yang dapat dibuka oleh sistem komputer Anda sendiri bukanlah perlindungan bagi Anda dari ancaman yang benar-benar mengosongkan akun — kode yang berjalan atas nama Anda.
Mengapa Clavitor tidak dapat dibaca dengan cara ini
Clavitor tidak menyimpan brankas Anda di perangkat. Tidak ada Login Data, tidak ada key4.db, tidak ada kunci di Local State — tidak ada apa pun di disk untuk diekstrak oleh proses yang berjalan atas nama Anda.
Kunci dekripsi tidak disegel dengan login OS Anda. Kunci tersebut berasal dari interaksi perangkat keras — Touch ID, Face ID, atau YubiKey — diproses di peramban, digunakan untuk satu permintaan, lalu dibuang. Kredensial diambil melalui API bercakupan tepat saat Anda memintanya, dan tidak pernah disimpan dalam cache. Malware yang berjalan atas nama Anda akan menemukan lemari kosong.
Itulah perbedaan antara "dienkripsi di perangkat Anda" dan "tidak ada di perangkat Anda sama sekali."
Berhenti mempercayakan kata sandi Anda pada peramban.
Ekstensi Clavitor mengisi otomatis seperti peramban Anda — dan menyimpan brankas di tempat yang tidak dapat dibaca oleh laptop Anda.