Local List Mode

İstemciler bu modda Google Safe Browsing v5'i kullanmayı tercih ettiğinde istemci davranışı, v5'in geliştirilmiş API yüzeyini kullanması dışında v4 Update API'ye benzer. İstemciler, yerel veritabanlarında ana makine soneki/yol öneki URL ifadelerinin SHA256 karma önekleri olarak biçimlendirilmiş bir dizi tehdit listesi tutar. İstemci belirli bir URL'yi kontrol etmek istediğinde yerel tehdit listesi kullanılarak kontrol gerçekleştirilir. Yalnızca eşleşme varsa istemci, kontrolü sürdürmek için sunucuya bağlanır.

Yukarıdaki örnekte olduğu gibi, istemci, kalıcı depolama alanında olması gerekmeyen yerel bir önbelleği de koruyacaktır.

Yerel tehdit listesi URL kontrolü prosedürü

Bu işlem, istemci Gerçek Zamanlı Mod prosedürünü kullandığında da gerçekleştirilir ve UNSURE değerini döndürür.

Bu prosedür tek bir URL u alır ve SAFE veya UNSAFE döndürür.

  1. expressions, u URL'si tarafından oluşturulan sonek/önek ifadelerinin listesi olsun.
  2. expressionHashes, öğeleri expressions içindeki her ifadenin SHA256 karmaları olan bir liste olsun.
  3. expressionHashPrefixes, öğeleri expressionHashes içindeki her karma oluşturma işleminin ilk 4 baytı olan bir liste olsun.
  4. expressionHashPrefixes için her expressionHashPrefix:
    1. Yerel önbellekte expressionHashPrefix adresini arayın.
    2. Önbelleğe alınan giriş bulunursa:
      1. Geçerli zamanın, geçerlilik bitiş zamanından büyük olup olmadığını belirler.
      2. Bu değer daha yüksekse:
        1. Bulunan önbelleğe alınmış girişi yerel önbellekten kaldırın.
        2. Döngüye devam edin.
      3. Değer daha büyük değilse:
        1. Bu expressionHashPrefix öğesini expressionHashPrefixes hesabından kaldırın.
        2. expressionHashes içindeki ilgili tam karma değerinin, önbelleğe alınmış girişte bulunup bulunmadığını kontrol edin.
        3. Bulunursa UNSAFE değerini döndürür.
        4. Bulunamazsa döngüye devam edin.
    3. Önbelleğe alınmış giriş bulunamazsa döngüye devam edin.
  5. expressionHashPrefixes için her expressionHashPrefix:
    1. Yerel tehdit listesi veritabanında expressionHashPrefix öğesini arayın.
    2. expressionHashPrefix, yerel tehdit listesi veritabanında bulunamıyorsa expressionHashPrefixes'dan kaldırın.
  6. RPC SearchHashes veya REST yöntemi hashes.search kullanarak expressionHashPrefixes öğesini Google Güvenli Tarama v5 sunucusuna gönderin. Bir hata oluştuysa (ağ hataları, HTTP hataları vb. dahil) SAFE değerini döndürün. Aksi takdirde, yanıtın SB sunucusundan alınan response yanıtı olmasına izin verin. Bu yanıt, tehdidin niteliğini (sosyal mühendislik, kötü amaçlı yazılım vb.) tanımlayan bazı yardımcı bilgilerle birlikte tam karma listesi ve önbelleğin geçerlilik bitiş zamanıdır expiration.
  7. response için her fullHash:
    1. fullHash ile birlikte expiration öğesini yerel önbelleğe ekleyin.
  8. response için her fullHash:
    1. isFound, expressionHashes içinde fullHash bulunmasının sonucu olsun.
    2. isFound değeri False ise döngüye devam edin.
    3. isFound doğruysa UNSAFE değerini döndürür.
  9. İade SAFE.