Bloom Filter Nedir?
Diğer adları: Bloom Filtresi
Kısaca
Bloom filter (Bloom filtresi), bir öğenin bir kümede bulunup bulunmadığını çok az bellek kullanarak hızlıca test eden olasılıksal bir veri yapısıdır. Blockchain'de hafif cüzdanların kendi işlemlerini bulmasında ve Ethereum'da olay kayıtlarının aranmasında kullanılır.
Bloom filter 1970'te Burton Howard Bloom tarafından önerildi. Yapı, sıfırlardan oluşan bir bit dizisi ve birkaç hash fonksiyonundan oluşur. Bir öğe eklenirken her hash fonksiyonunun gösterdiği bit 1 yapılır. Sorgulamada bu bitlerden biri bile 0 ise öğe kesinlikle kümede yoktur; hepsi 1 ise öğe muhtemelen kümededir. Yani yanlış pozitif sonuç mümkündür, yanlış negatif mümkün değildir.
Bitcoin'de 2012'de BIP-37 ile tanımlanan yöntemde, SPV (basitleştirilmiş ödeme doğrulama) cüzdanları ilgilendikleri adresleri bir Bloom filter'a ekleyip tam düğümlere gönderir; düğüm de yalnızca filtreyle eşleşen işlemleri iletir. Böylece hafif istemciler tüm blockchain'i indirmeden kendi işlemlerini takip edebilir. Ethereum'da ise her blok başlığında, o bloktaki olay kayıtlarını (log) özetleyen bir Bloom filter bulunur ve uygulamaların ilgili olayları hızla aramasına yardımcı olur.
BIP-37 yöntemi zamanla gizlilik açısından zayıf bulundu; düğümler filtreleri analiz ederek cüzdanın hangi adreslere sahip olduğunu tahmin edebiliyordu ve yöntem düğümlere gereksiz yük bindirmeye de açıktı. Bu nedenle Bitcoin Core'da varsayılan olarak kapatıldı ve yerini büyük ölçüde BIP-157 ve BIP-158 ile tanımlanan, filtrelerin düğüm tarafında üretildiği kompakt blok filtrelerine bıraktı.
Son güncelleme: · Bu içerik bilgilendirme amaçlıdır, yatırım tavsiyesi değildir.

