Sözlük · Parmak izi alma
Canvas parmak izi alma
Bir HTML canvas çizimini işleme biçimindeki küçük farklardan bir cihazı tanımlama.
Tanım
Canvas fingerprinting, bir sayfanın HTML Canvas API kullanarak metin veya şekiller çizdiği ve sonuçta oluşan pikselleri geri okuduğu bir tekniktir. İşleme işlemi GPU, grafik sürücüsü, yazı tipleri ve kenar yumuşatmaya (anti-aliasing) bağlı olduğundan, çıktı cihazlar arasında biraz farklılık gösterebilir ve bunun bir özeti (hash) bir parmak izi sinyali haline gelir.
Nasıl çalışır
- Bir betik bir tuval öğesi (genellikle görünmez) oluşturur ve 2D bağlamı ile metin, emoji, gradyanlar veya şekiller çizer.
- Sonucu, görüntüyü bir veri URL'si olarak döndüren toDataURL() veya getImageData() gibi yöntemlerle okur.
- Piksel verisinin özeti (hash) alınır. Özdeş kurulumlar özdeş özetler üretme eğilimindedir; farklı donanımlar veya yazı tipi yığınları genellikle üretmez.
Neden önemlidir
- İzin istemine ihtiyaç duymaz ve çerezler olmadan çalışır, bu nedenle takip ve dolandırıcılık önleme betikleri tarafından yaygın olarak kullanılır.
- Antidetect tarayıcıların ve gizlilik odaklı tarayıcıların, çıktıyı tutarlı hale getirerek veya gürültü ekleyerek kontrol etmeye çalıştığı sinyallerden biridir.
Sınırlar ve yaygın yanlış inanışlar
- "Canvas tek başına beni tanımlıyor." Bu bir sinyaldir; genellikle WebGL, yazı tipleri ve ekran verileri gibi diğerleriyle birleştirilir.
- "Rastgele gürültü eklemek görünmezdir." Her okumada değişen gürültü, aynı görüntünün iki kez çizilmesi ve karşılaştırılmasıyla kendisi de tespit edilebilir.
Örnek: Entegre grafiklere sahip bir dizüstü bilgisayarda ve harici bir GPU'ya sahip bir masaüstü bilgisayarda aynı yazı tipinde aynı cümleyi çizmek, gözle görülmeyen ancak özeti alındığında farklı olan piksel farklılıkları üretebilir.
Hiçbir tarayıcı veya proxy, hesapların kısıtlanmayacağını garanti edemez. Her platformun kurallarına uyun.
İlgili terimler
- Tarayıcı parmak izi — Çerezler olmadan bir tarayıcıyı tanımlayabilen tarayıcı ve cihaz özelliklerinin bir kombinasyonu.
- WebGL parmak izi alma — Bir cihazı tanımlamak için WebGL grafik bilgilerini ve işleme çıktısını kullanma.
İlgili kılavuzlar
Kaynaklar
- MDN: Canvas API (tarayıcı dokümanları)
- MDN: HTMLCanvasElement.toDataURL() (tarayıcı dokümanları)
- W3C: Web Spesifikasyonlarında Tarayıcı Parmak İzi Almayı Azaltma (standart)
Kontrol edilen 2026-11-07.