Kapatmak için ESC'ye basın

Kripto Gizliliği: Canvas ve WebGL Parmak İzini Durdurun

Bu yazı, IP adresinizi gizleseniz bile tarayıcınızı benzersiz bir dijital pasaporta dönüştüren "pasif parmak izi" (passive fingerprinting) dünyasına derinlemesine bir dalıştır.

Pek çok kullanıcı, kripto cüzdanlarını korumak için VPN + Gizli Sekme ikilisinin yeterli olduğu gibi büyük bir yanılgıya düşüyor. Oysa modern anti-fraud (dolandırıcılık önleme) sistemleri ve analiz platformları için IP'niz, verinin sadece %10'udur. Kalan %90'lık kısım, donanımınızın pikselleri nasıl işlediğinde (render) gizlidir.

1. Canvas Fingerprinting: Görünmez Bir İmza Atmak

Canvas fingerprinting
 

Canvas, scriptler aracılığıyla grafik oluşturmak için tasarlanmış bir HTML5 elementidir. Bu yöntemin özü şudur: Tarayıcıya, kullanıcının gözünden gizlenen bir resim veya metin çizmesi komutu verilir.

Teknik olarak nasıl çalışıyor?

Farklı ekran kartları, sürücüler ve tarayıcı sürümleri; rasterleştirme (rasterization), kenar yumuşatma (anti-aliasing) ve yazı tipi ipuçlandırma (font hinting) için farklı algoritmalar kullanır.

  • Bir script, tarayıcıdan belirli bir yazı tipi ve gradyan kullanarak bir metin dizesi çizmesini ister.
  • Sonuç, Base64 formatına dönüştürülür veya SHA-256 gibi bir yöntemle hash'lenir.
  • Alt piksel oluşturma düzeyindeki tek bir piksellik fark bile tamamen benzersiz bir hash oluşturacaktır.

Kod mantığı örneği (JS):

const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
ctx.textBaseline = "top";
ctx.font = "14px 'Arial'";
ctx.fillStyle = "#f60";
ctx.fillRect(125,1,62,20);
ctx.fillStyle = "#069";
ctx.fillText("Crypto_Security_Check", 2, 15);
const fingerprint = canvas.toDataURL().slice(-100); // Hash'in bir kısmını alıyoruz
console.log("Unique ID:", btoa(fingerprint));

2. WebGL: Donanımınızın Röntgenini Çekmek

Canvas 2D grafiklerle ilgilenirken, WebGL (Web Graphics Library) donanım katmanının çok daha derinlerine iner.

WebGL üzerinden deanonimizasyon (kimlik tespiti) için iki yöntem:

  • WebGL Report: Script; ekran kartınızın üreticisi, modeli, bellenim (firmware) sürümü, bellek kapasitesi ve desteklenen uzantılar gibi parametreleri sorgular.
  • WebGL Image Rendering: Tarayıcıya karmaşık bir 3D figür çizme görevi verilir. GPU'nun hesaplama mantığındaki mikroskobik farklılıklar (Floating Point hataları) nedeniyle, ortaya çıkan görüntü matematiksel düzeyde benzersiz kusurlara (artifact) sahip olacaktır.

Az bilinen bir gerçek: Tarayıcıda "Donanım Hızlandırma" (Hardware Acceleration) kullanmak, anonimliğin en büyük düşmanıdır. Bu özellik, tarayıcı oturumunuzu doğrudan ekran kartınızın fiziksel çipine bağlar.

3. VPN Neden Burada Çaresiz Kalıyor?

VPN "posta adresinizi" (IP) değiştirir ama "parmak izinizi" değiştirmez.

Cüzdanınıza bir saat önce Hollanda VPN'i ile, bir saat sonra ise Singapur VPN'i ile girdiğinizi hayal edin. Eğer her iki durumda da Canvas Hash'iniz eşleşiyorsa, analiz sistemleri (örneğin Chainalysis veya borsaların iç sistemleri) %99 ihtimalle bu iki oturumu birbiriyle ilişkilendirecektir.

Bu durum, şu tür bağlantı grafiklerinin kurulmasına olanak tanır:

  • Birden fazla "anonim" cüzdanın tek bir kümede (cluster) birleştirilmesi.
  • Parmak izinin, KYC yapılmış bir borsa (CEX) hesabıyla eşleştirilerek sahibinin kimliğinin deşifre edilmesi.

4. Korunmak İçin Pratik Tavsiyeler

"Temel" Seviye: Tarayıcı Eklentileri

CanvasBlocker veya Trace gibi eklentilerin kurulması.

İnce bir detay: Canvas'ı tamamen engellemek kötü bir fikirdir. Bu sizi daha da benzersiz kılar ("Canvas'ı engellemiş olan o kullanıcı"). Doğru yaklaşım "Gürültü" (Noise) eklemektir. Eklenti, her oturumda hash'in değişmesi için rastgele ve görünmez pikseller eklemelidir.

"İleri" Seviye: Tarayıcı Yapılandırması

Firefox kullanıyorsanız, yerleşik korumayı aktif edebilirsiniz:

  1. Adres çubuğuna about:config yazın.
  2. privacy.resistFingerprinting ayarını bulun ve true yapın.
  3. Bu, tarayıcıyı sitelere standart parametre değerleri vermeye zorlar ve izin almadan Canvas verilerinin okunmasını engeller.

"Uzman" Seviye: Anti-detect Tarayıcılar

Kripto varlıklarla profesyonel düzeyde ilgilenenler AdsPower, Multilogin veya Dolphin{anty} gibi araçlar kullanır.

Bu araçlar parmak izlerini sadece engellemekle kalmaz; onları mevcut diğer gerçek cihazların konfigürasyonlarıyla değiştirerek tamamen izole edilmiş dijital kimlikler oluşturur.

5. Profilinizi Kontrol Etmek İçin Teknik Kontrol Listesi

Şu an ne kadar savunmasız olduğunuzu anlamak için bu kaynakları ziyaret edin:

  • BrowserLeaks.com — Canvas ve WebGL bölümlerini mutlaka kontrol edin.
  • Cover Your Tracks (EFF) — Milyonlarca kullanıcı arasındaki "benzersizlik" derecenizi gösterir.
  • Creepjs — Parmak izlerinizi taklit edip etmediğinizi bile anlayabilen en gelişmiş araçlardan biridir.

Küçük ama kritik bir detay: Yazı Tipleri ve Ses. Sisteminize yüklü yazı tipi listesi ve ses kartınızın sesi işleme biçimi (AudioContext Fingerprint), Canvas ile senkronize çalışır. Grafikleri korusanız bile, benzersiz bir yazı tipi seti sizi ele verebilir.

6. WebGL Metadata: GPU Üzerinden Derin Tarama

WEB3 security deep drive
 

Sadece görüntü oluşturmanın (rendering) ötesinde WebGL; "Unmasked Vendor" ve "Unmasked Renderer" verilerini dışarı sızdırmanıza neden olur. Bunlar doğrudan grafik çipinizin kimlik bilgileridir. Gizlilik odaklı bir tarayıcı kullansanız bile siteler şu parametrelere erişebilir:

  • GL_MAX_TEXTURE_SIZE: Donanımınızın desteklediği maksimum doku boyutu.
  • GL_ALIASED_LINE_WIDTH_RANGE: Desteklenen çizgi genişliği aralığı.
  • Precision Factors: Shader'lardaki kayan noktalı (floating point) hesaplama hassasiyeti.

Bu veriler, ekran çözünürlüğü ve renk derinliği ile birleştiğinde, taklit edilmesi neredeyse imkansız, benzersiz bir donanım imzası oluşturur.

7. Gizli Tehlike: Ses Parmak İzi (AudioContext)

Bu, deanonimizasyon (kimlik tespiti) yöntemlerinin en "sessiz" olanlarından biridir. Script, mikrofonunuzu kullanarak ses kaydı yapmaz; bunun yerine AudioContext API'sini manipüle eder.

Süreç Nasıl İşliyor?

  • Tarayıcıya düşük frekanslı bir sinüs dalgası oluşturma komutu verilir.
  • Bu sinyal bir yazılım filtresinden (kompresör veya analizör) geçirilir.
  • İşlemci (CPU) mimarisi ve işletim sisteminin matematik kütüphanelerindeki farklılıklar nedeniyle, çıkıştaki ses dalgası benzersiz bir "matematiksel imzaya" (hash) sahip olur.

Kullanıcılar ses yığını (audio stack) ayarlarını nadiren değiştirdiği için bu parmak izi zaman içinde son derece istikrarlı kalır.

8. Yazı Tipleri ve Konteyner Taşması (Font Enumeration)

Sisteminizde yüklü olan yazı tipi listesi aslında sizin biyografinizdir. Eğer Adobe Creative Cloud, mühendislik yazılımları veya nadir diller için özel fontlar yüklüyse, anında benzersiz (unique) hale gelirsiniz.

Dosya Sistemine Erişmeden Bu Nasıl Kontrol Edilir?

Script, standart bir yazı tipiyle (örneğin serif) görünmez bir <span> bloğu oluşturur. Ardından bu bloğa nadir bulunan bir fontu uygulamaya çalışır. Bloğun boyutları 0.001 piksel bile değişirse, o fontun sizde yüklü olduğu anlaşılır. 500 popüler fontluk bir liste taranarak, site sizin için benzersiz bir vektör oluşturur.

9. Kripto Cüzdanlarıyla Etkileşim: Tehlikeli Bir Köprü

En kritik zafiyet, tarayıcının bir eklentiyle (MetaMask, Phantom vb.) etkileşime girdiği anda ortaya çıkar.

  • Window Object Injection: Çoğu cüzdan, ziyaret edilen tüm sayfalara window.ethereum nesnesini enjekte eder. Bir site, sadece bu nesnenin varlığını kontrol ederek saniyeler içinde sizin bir kripto kullanıcısı olduğunuzu fişleyebilir.
  • Provider Fingerprinting: Cüzdanların farklı sürümleri, belirli API çağrılarına farklı yanıtlar verir; bu da takipçilerin kullandığınız yazılımın tam sürümüne kadar daraltma yapmasına olanak tanır.

Az bilinen bir bilgi: Battery Status API üzerinden saldırı. Eskiden tarayıcılar, sitelerin pil seviyesini yüzde hassasiyetiyle görmesine izin veriyordu. Bu, IP değiştirilse veya çerezler silinse bile kullanıcının oturumlarını birbirine bağlamayı sağlıyordu. Çoğu modern tarayıcıda bu kapatıldı, ancak Android'deki eski Chrome/Opera sürümlerinde hala çalışıyor.

10. Davranışsal Parmak İzi (Keystroke & Mouse Dynamics)

Bu, deanonimizasyonun "zirve" noktasıdır. Mesele ne yaptığınız değil, *nasıl* yaptığınızdır.

  • Yazım Ritmi: Tuşlara basma süresi (dwell time) ve tuşlar arası geçiş süresi (flight time).
  • Fare Hareketleri: Hız, yörünge eğriliği ve hatta elinizdeki mikro titremeler.

Cüzdanınıza VPN arkasından girseniz bile, "fare kullanma tarzınız" başka bir sitedeki gerçek kullanıcı profilinizle eşleşirse, sistem sizi aynı kişi olarak işaretleyebilir.

11. Uygulama: Kod Düzeyinde Koruma Nasıl Görünür?

Bir koruma aracı geliştiriyorsanız veya tarayıcınızı test etmek istiyorsanız, fonksiyonların üzerine yazma (Proxying) tekniğine dikkat edin.

Canvas'ı manipüle etmek için örnek kod (Konsept):

// Canvas'tan veri alma yöntemini yakalıyoruz
const originalToDataURL = HTMLCanvasElement.prototype.toDataURL;
HTMLCanvasElement.prototype.toDataURL = function(type) {
    const context = this.getContext('2d');
    // Tuvalin köşesine mikroskobik bir gürültü ekliyoruz
    context.fillStyle = "rgba(255,255,255,0.01)";
    context.fillRect(0, 0, 1, 1); 
    
    return originalToDataURL.apply(this, arguments);
};

Bu script, takipçinin okumaya çalıştığı veriyi "zehirleyerek" hash değerinizin her an değişmesini sağlar (Sürekli değişim de şüpheli bir durumdur, bu yüzden ideal olarak gürültü bir oturum boyunca sabit kalmalıdır).

12. "Steril Ortam" İçin Öneriler

Sterile envir onment infographic
 

Kritik işlemler ve yüksek miktarlı varlıklarla çalışırken:

  • Whonix veya Tails: Tüm trafiği Tor üzerinden geçiren ve katı kurallara sahip standart bir tarayıcı kullanan işletim sistemleri. Burada tüm kullanıcılar aynı parmak izine sahiptir (en etkili koruma: "kalabalığın içinde kaybolmak").
  • Özel Donanım (Dedicated Hardware): Sadece kripto işlemleri için kullanılan, içinde kişisel veri bulunmayan, temiz bir hat üzerinden bağlanan ucuz bir laptop.
  • JS'de JIT'i Devre Dışı Bırakmak: Tarayıcıda "Just-In-Time" derlemeyi kapatmak (bayraklar üzerinden) betiklerin çalışmasını yavaşlatır ancak birçok gelişmiş parmak izi alma tekniğini bozar.

13. "Lying Browsers" Problemi: Sahtecilik Yaparken Yakalanmak Neden İnfaz Sebebidir?

 

Modern anti-frod sistemleri (örneğin Akamai, Cloudflare veya FingerprintJS v3+), artık sadece parmak izi toplamakla yetinmiyor; bu izlerin değiştirilip değiştirilmediğini, yani "sahtecilik" (spoofing) belirtilerini arıyor. Eğer sadece Canvas'ı engelleyen veya rastgele veri dönen basit bir eklenti kullanıyorsanız, script bunu anında fark eder.

Sizi yalan söylerken nasıl yakalıyorlar?

  • Consistency Checks (Tutarlılık Kontrolleri): Script, User-Agent bilginiz ile tarayıcınızın gerçek yeteneklerini çapraz sorgular. Örneğin, tarayıcınız Windows üzerinde Chrome olduğunu iddia ediyor ama Safari'ye özgü metin işleme (rendering) özelliklerini destekliyorsa, sistem sizi anında "frod" olarak fişler.
  • Performance Fingerprinting: Scriptler, belirli JS fonksiyonlarının çalışma hızını ölçer. Koruyucu eklentiler genellikle sisteme bir yük (overhead) bindirir; bu milisaniyelik gecikmeler kolayca hesaplanabilir ve tespit edilebilir.
  • TCP/IP Stack Fingerprinting: Tarayıcınız mükemmel bir şekilde taklit edilmiş olsa bile, ağ yığınınız (TTL boyutu, TCP pencere parametreleri) gerçek işletim sisteminizi ele verebilir. VPN her zaman bu düşük seviyeli parametreleri gizleyemez.

14. Gözden Kaçan Vektör: Web Workerlar ve Service Workerlar

Çoğu kullanıcı çerezleri ve önbelleği temizlemeyi ihmal etmez ama Service Workerları tamamen unutur. Bunlar, siz sekmeyi kapatsanız bile arka planda çalışmaya devam eden scriptlerdir.

  • Arka planda kalıcı bir benzersiz kimlik (ID) depolamak için kullanılabilirler.
  • navigator.hardwareConcurrency üzerinden işlemcinizin çekirdek sayısını tam olarak tespit edebilirler; bu da profilinize bir veri noktası daha ekler.

15. Cüzdan Eklentilerinin Zafiyetleri (Side-Channel Attacks)

MetaMask'ınız farkında olmadan dışarıya bilgi "sızdırıyor" olabilir. Bir siteye girdiğinizde, cüzdanınız bir sağlayıcıya (örneğin Infura) istek gönderebilir. Eğer tarayıcınız istek izolasyonu (request isolation) için yapılandırılmamışsa, bir analiz şirketi blokzinciri istek zamanlaması ile belirli bir siteyi ziyaret etme zamanınızı eşleştirebilir (Timing Attack).

16. Nihai Güvenlik Protokolü (The Gold Standard)

Kripto varlıkları yönetirken deanonimizasyon riskini minimuma indirmek için şu algoritmayı izleyin:

  • Bağlam İzolasyonu (Isolation): Gmail veya YouTube hesabınızın açık olduğu ana tarayıcıyı asla kripto işlemleri için kullanmayın. Bu ikisini birbirinden tamamen ayırın.
  • Uzmanlaşmış Çözümler Kullanın:
    • Maksimum Anonimlik İçin: Tor Browser (Standard veya Safer modunda). Tor, Canvas parmak izinizi diğer binlerce Tor kullanıcısıyla aynı olmaya zorlar. Amaç, kalabalığın içinde kaybolmaktır.
    • Çoklu Hesap Yönetimi İçin: Rastgele değil, gerçek sistemlerden alınmış gerçek parmak izi profillerini kullanan "Anti-detect" tarayıcılar tercih edin.
  • Donanım Cüzdanları (Hardware Wallets): Ledger veya Trezor gibi cihazlar kullanmak, özel anahtarlarınız cihazdan hiç çıkmadığı için sorunun yarısını çözer. Ancak, tarayıcı üzerinden işlem imzalarken halka açık adresiniz (public address) hala dijital profilinizle ilişkilendirilebilir.
  • WebGL'i Kapatın: Eğer iş akışınız engel teşkil etmiyorsa, tarayıcı ayarlarından WebGL'i tamamen devre dışı bırakın.
    • Chrome'da: Başlatma parametrelerine --disable-webgl ekleyerek.
    • Firefox'ta: about:config altından webgl.disabled = true yaparak.
  • DNS-over-HTTPS (DoH): DNS sorgularınızı şifreleyin; böylece ISS'niz veya yerel bir takipçi hangi node'lara veya cüzdan API'lerine bağlandığınızı göremez.

Özet

2026 yılında deanonimizasyon bir "hack" meselesi değil, bir istatistik meselesidir. Canvas ve WebGL devasa bir yapbozun sadece parçalarıdır. Amacınız ya "gürültü" olmak (anti-detect'ler ile) ya da "standart" olmaktır (Tor/Tails ile).

Unutmayın: VPN trafiğinizi ISS'den gizler ama kimliğinizi ziyaret ettiğiniz siteden korumaz. Tarayıcınız, size karşı ifade veren en geveze tanıktır.


FAQ

Hayır. VPN sadece IP adresinizi değiştirir ancak tarayıcı parmak izi (fingerprinting) donanım seviyesinde çalışır. Borsalar; ekran kartınız, yazı tipleriniz ve tarayıcı ayarlarınız üzerinden size özel bir "imza" oluşturur. Farklı hesaplara farklı VPN kanallarıyla girseniz bile, cihazınızın Canvas/WebGL imzası aynı kaldığı için sistem bu hesapların aynı kişiye ait olduğunu anında anlar.

Güvenlik durumunuzu test etmek için BrowserLeaks, BrowserScan veya Cover Your Tracks gibi bağımsız denetim araçlarını kullanabilirsiniz. Bu siteler, tarayıcınızın milyonlarca kullanıcı arasından ne kadar ayırt edilebilir ("Unique") olduğunu gösterir. Eğer profiliniz "Eşsiz" olarak işaretlenmişse, herhangi bir web sitesi çerezlere veya VPN'e ihtiyaç duymadan sizi anında tanıyabilir.

Kesinlikle gürültü (noise) eklemek. Canvas'ı tamamen engellemek, anti-fraud sistemleri için "şüpheli kullanıcı" bayrağı kaldırmanıza neden olur çünkü normal bir kullanıcı grafik işlemlerini kapatmaz. En iyi yöntem, Brave gibi dahili koruması olan tarayıcılar veya görsel render alma sürecine rastgele pikseller ekleyen araçlar kullanmaktır. Bu sayede parmak iziniz her oturumda değişir ve izlenmeniz imkansız hale gelir.
Sying Yu

I am a blockchain developer specializing in building secure, scalable, and innovative decentralized solutions. My expertise covers smart contracts, payment systems, and integrating crypto with fiat to optimize financial workflows. I thrive on creating modern, efficient tools for the evolving digital economy....

Yorumunuzu paylaşın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar işaretlendi *