Loncati ke konten
Diterjemahkan secara mesin dari bahasa Inggris. Lihat aslinya
Glosarium · Fingerprinting

Canvas fingerprinting

Mengidentifikasi perangkat dari perbedaan kecil dalam cara perangkat merender gambar HTML canvas.

Definisi

Canvas fingerprinting adalah teknik di mana sebuah halaman menggambar teks atau bentuk dengan API HTML Canvas dan membaca kembali piksel yang dihasilkan. Karena rendering bergantung pada GPU, driver grafis, font, dan anti-aliasing, hasilnya dapat sedikit berbeda antar perangkat, dan hash dari hasil tersebut menjadi satu sinyal sidik jari.

Diagram: skrip menggambar di canvas, perangkat merendernya, piksel di-hash
Diagram editorial (ilustrasi sederhana, bukan tangkapan layar produk).

Cara kerjanya

  • Sebuah skrip membuat elemen canvas (seringkali tidak terlihat) dan menggambar teks, emoji, gradien, atau bentuk dengan konteks 2D.
  • Ia membaca hasilnya dengan metode seperti toDataURL(), yang mengembalikan gambar sebagai URL data, atau getImageData().
  • Data piksel di-hash. Pengaturan yang identik cenderung menghasilkan hash yang identik; perangkat keras atau tumpukan font yang berbeda sering kali tidak.

Mengapa itu penting

  • Ia tidak memerlukan perintah izin dan berfungsi tanpa cookie, sehingga banyak digunakan oleh skrip pelacakan dan anti-penipuan.
  • Ini adalah salah satu sinyal yang coba dikendalikan oleh browser antidetect dan browser yang berfokus pada privasi, baik dengan membuat output konsisten atau dengan menambahkan noise.

Batasan dan kesalahpahaman umum

  • "Canvas saja mengidentifikasi saya." Ini adalah salah satu sinyal; biasanya digabungkan dengan yang lain seperti WebGL, font, dan data layar.
  • "Menambahkan noise acak tidak terlihat." Noise yang berubah pada setiap pembacaan dapat dideteksi sendiri dengan menggambar gambar yang sama dua kali dan membandingkannya.
Contoh: Menggambar kalimat yang sama dengan font yang sama di laptop dengan grafis terintegrasi dan di desktop dengan GPU diskrit dapat menghasilkan perbedaan piksel yang tidak terlihat oleh mata tetapi berbeda saat di-hash.

Tidak ada browser atau proxy yang dapat menjamin bahwa akun tidak akan dibatasi. Ikuti aturan setiap platform.

Istilah terkait

  • Sidik jari browser — Kombinasi karakteristik browser dan perangkat yang dapat mengidentifikasi browser tanpa cookie.
  • WebGL fingerprinting — Menggunakan informasi grafis WebGL dan output rendering untuk mengidentifikasi perangkat.